Рынок заведений общественного питания Москвы

Описание: Инвесторы из фонда «Shut Up and Take My Money» решили попробовать себя в новой области и открыть заведение общественного питания в Москве.

Подготовить исследование рынка Москвы, найти интересные особенности и презентовать полученные результаты, которые в будущем помогут в выборе подходящего инвесторам места.

Цель исследования

Входные данный

Описание данных

Ход исследования

  1. Обзор данных.
  2. Предобработка данных
  3. Анализ данных
  4. Детализируем исследование: открытие кофейни
  5. Подготовка презентации
  6. Выводы

Обзор данных.

Загружаем данные и подготовим их к анализу.

Путь к файлу

/datasets/moscow_places.csv

Импорт библиотек и загрузка данных

pandas - библиотека для загрузки и обработки данных

matplotlib.pyplot - библиотека для работы с графиками

datetime - библиотека для работой с датой

seaborn - библиотека для создания статистических графиков

numpy - библиотека высокоуровневых математических функций

scipy.stats - библиотека для работы со статистический анализом данных

re - модуль для регулярных выражений

os - библиотека функций для работы с операционной системой

plotly - библиотека визуализации данных (для воронкообразных диаграмм)

json - модуль для работы с JSON-форматом

folium - модуль для работы c картой

Функция общей иформации и первичные проверки:

Загрузим файл из папки /datasets и сохраним в переменную

Загрузим файлы для проекта:

Как видим всего в базе 8406 заведений.

Стилистических нарушений в заголовках нет.

Абсолютных дубликатов нет.

На первый взгляд значения колонок соответствует предоставленному описанию.

Пустые значения в колонках посмотрим относительные значения:

Часть колонок имеют пустые значения:

Часть пустых значений можно объясняеть тем что если заведение не кофейня то у нее будет отсутствовать middle_coffee_cup(стоимость чашки кофе) и наоборот если это кофейня то у нее нет middle_avg_bill(стоимость среднего чека).

Нужно проверить это утверждение.

Так же можно попробовать восстановить данные по по категорию цен взяв за основу средний чек там на 6% меньше пропусков.

Также можно проверить есть ли пустоты по сетевым заведениям чаще всего у них должны совпадать часть данных: по времени работы и среднему чеку

Предобработка данных

Посмотрим какик данные делятся по avg_bill

напишем функцию для создания колонки только с текстом без цен:

напишем функцию для добовление колонки относительных данных

добавим колонку без цен по среднему чеку

По колонке avg_bill у нас для среднего чека есть три деления(не считая пропусков 4590 - 55%) это:

Проверим пересечение этих групп с категориями заведений:

Посмотрим на график:

В основном все заведения в базе ориентируется на "средний счет" во всех категориях, только у кофеен лидирует "цена за капучино"(521). "цена за капучино" так же встречается в барах(6), кафе(4), пиццерии(3) и бистро(1)

Цена бокала пиво естественный лиде бары(130) и две пиццерии.

Посмотрим сколько

Посмотрим на кофейни их пропуски.

попробуем заполнить пропуски в категории price на основе средних чеков:

Видим что оринтироваться на стоимоть каппучно не имеет смысла так как 3 категории 250-256 р. средняя цена 1568р.

А вот по среднему чеку можно сделать функцию и добавить там где мы може ориентироваться на средний чек:

Помотрим на количество уникальных заведений:

Посмотрим на процент пропусков данных:

Остальные пропуски оставим как есть чтобы не искажать данные.

Хорошо, посмотрим на дубликаты, проверив по нескольким колонкам

По имени и адресу:

По имени и координатам:

Посмотрим на процент пропусков данных:

Проверим везде ли у нас Москва:

Отлично везде Москва.

Создадим колонку с значением только улицы заведения:

Посмотрим сколько значений могло оказаться пустыми:

Добавим их другой обработкой:

Хорошо теперь посмотрим на дубликаты в улицах:

Посмотре все повторяющие улицы делаем словарь с исправленными названиями:

Для дальнейшего удобства сократим длинные названия округов убрав "административный округ" из названия округа:

Добавим колонку отображающие круглосуточную работу заведения:

Посмотрим сколько всего улиц в базе и заодно самые "загруженные" заведениями улицы:

1393 улицы в базе, чаще всего встречается проспект Мира, Профсоюзная улица и проспект Вернадского(184, 122, 108 - заведений соответственно)

Анализ данных

Напишем функцию для круговых диаграмм:

Посмотрим какие категории заведений представлены в данных:

Посмотрим все категории заведений в базе:

Построим круговую диаграмму:

Построим график распределения для разнообразия

Распределения по категориям:

Посмотрим распределение посадочных мест по категориям:

Посмотрим на соотношение сетевых и несетевых заведений:

Для начала проверим не сетевые заведения с одинаковыми названиями (возможно сетевые), но по ошибки в базе относящиеся не к сетевым:

Ни одно название 100% нельзя назвать сетевым так как просто может быть совпадением.

Топ не очень креативных владельцов:

Посмотрим на соотношение сетевых и не сетевых заведений:

Посмотрим на графике:

В базе больше не сетевых заведений чуть больше чем в 1,6 раза

Посмотрим как разделяется категории заведений на сетевые и не сетевые:

Посмотрим на графике:

Лидеры категорий что сетевые и не сетевые одинаковы:

Сетевых заведений больше чем не сетевых только в 3 категориях из 8:

Посмотрим на топ 15 сетевых заведений:

Посмотрим на графике:

Посмотрим как в топ 15 распределены категории:

По категориям безоговорочный лидер "кофейни" 6 заведения из 15, далее "ресторан" и "кафе" по 3 заведения

Если помотреть по количеству точек заведений здесь так же лидируют "кофейни" 350 точек и 45,6% от всех точек топ 15, затем "рестораны" и "пиццерии" (154 и 150 точек) примерно по 20% от всех точек топ 15.

Посмотрим какие административные районы Москвы присутствуют в базе:

Отобразим на диаграмме:

Отобразим как распределены различные категории в районах Москвы:

Отобразим на графике:

Видим что лидер по всем фронтам это Центрайльный округ тут больше всего заведений всех категорий. Антилидер это Северо-Западный округ - возможно это связанно с тем что 46% територии это лесопарковые массивы, водоёмы, заповедные зоны. Википедия*

Далее распределение не равномерное, например в Юго-Восточном на втором месте по "кафе", но по "рестораном" он на предпоследнем. И так по всему остальным округам.

Добавим колонку с суммой по всем округам:

Так контраст еще более падает и все становится менее очевидным.

Сделаем данные отностительными и посмотрим еще раз на график:

Лидер и антилидер непокалебимы, но есть три основных категорий центрального округа:

Далее столовые 21% кафе и булочные по 19,5% и пиццерии 18% и фастфуд 14%

и по остальным есть изменения но из за малого контраста не видно, убирем лидера, анитилидера и посмотрим:

В остальном все рядом с друг другом.

Посмотрим на распределение средних рейтингов по категориям заведений.

Построим таблицу по категориям с максимальной минимальной средними и медиальной оценками:

Построим диаграмму размаха для сравнения оценок по категориям заведений:

Немного "подрезаем" диаграмму(убираем выбросы в сторону минимальных оценок) видим что:

Посмотрим на среднию оценку по округам Москвы

Подготовим иконки для отображения на карте:

Напишем функцию для отображения данных на карте в виде хороплета:

Применим функцию для отображения рейтинга на карте:

Построим хотмеп для подробного отображения среднего рейтинга по заведениям и округам:

Отобразим все заведения на карте

Отлично теперь можно увидеть каждое заведение на карте с названием и рейтингом.

Посмотрим как распределены заведения по районам Москвы

Посмотрим топ-15 улиц по количеству заведений:

Посчитаем кол-во по улицам и отберем топ 15 улиц и по ним отфильтруем всю таблицу

Подготовим данные к графику:

Построим график:

Дополнительно выделяется МКАД с 46 кафе это 70% от всех его заведений.

Посмотрим как они распределяются по округам:

Большинство этих улицы многополосные шоссе основные артерии города.

Больше всего таких улиц на Севере 4 шт и Юго-Западе 3 шт

Найдем улицы, на которых находится только один объект общепита

Одно заведение улице:

Посмотрим как они распределены по округам:

Построим график

В каждом районе есть заведения которые одни на улице в среднем 5% от всех заведений в округе В каждом районе есть улица с одним заведением в среднем 29% от всех улиц в округе

Посмотрим как они расположены на карте:

Построим фоновую картограмму по среднему чеку в округах:

По категориям:

Чашка капучино по категориям:

Разделение категорий только на бары(250-335р.) и пиццерии(200-165р.), причем неожиданно пиво в пиццерии доступнее чем в барах(пабах).

Выводы:

Два самых выгодных категории заведения бар/паб и ресторан

Детализируем исследование: открытие кофейни

По просьбе заказчика углубляемся отдельно в тему кофейн.

Посмотрим сколько всего кофеен в таблице?

В таблице всего 1413 кофейн 17% от всех данных.

Посмотрим как они деляться по округам:

Больше всего в Центре 30% (428) кофейн. Далее Север 13%(193) и Северо-Восток 11%(159)

Меньше всего Северо-Востоке 4,4%(62), Юго-Востоке 6,3%(89) и Юго-Западе 6,8%(96)

Собирем общие данные по округам:

Разделим на сетевые и не сетевые.

Выведем рейтинг не сетевых кофейн по округам:

Выведем рейтинг сетевых кофейн по округам:

Построим графики по кол-ву кофейн, среднему чеку, стоимости капучино и посадочным местам в округах

Кол-во сетевых и не сетевых кофейн по округам:

Разделение на сетевые и не сетевые по округам почти везде равное, кроме:

Больше всего и сетевых и не сетевых кофейн в Центре 221 и 207 кофейн

Средний чек сетевых и не сетевых кофейн по округам

Стоимость капучино в сетевых и не сетевых кофейн по округам:

Кол-во посадочных мест в сетевых и не сетевых кофейн по округам:

Самые большые компании могут разместиться на:

им же стоит избегать:

Посмотрим есть ли и если есть сколько круглосуточных кофейн

76 круглосуточных кофейн на Москву в базе.

Посмотрим как они распологаются по округам:

Половина всех круглосуточных кофейн в Центре(50%) - 38 шт.

Меньше всего Юге, Юго-Востоке по 1 шт. и Северо-Западе - 3 шт.

Собирем общие данные по круглосуточных кофейн в округах:

Разделим на сетевые и не сетевые.

Выведем рейтинг не сетевых круглосуточных кофейн по округам:

Выведем рейтинг сетевых круглосуточных кофейн по округам:

Кол-во круглосуточных сетевых и не сетевых кофейн по округам:

Видим что не сетевых всего 9 шт.

Сетевых больше всего в Центре 1/2 от всех круглосуточных кофейн

Средний чек круглосуточных сетевых и не сетевых кофейн по округам

*Много пропущеных ячеек так что точность выводо условна.

Стоимость капучино в сетевых и не сетевых круглосуточных кофейн по округам:

Кол-во посадочных мест в сетевых и не сетевых круглосуточных кофейн по округам:

Самые большые компании в любое время дня могут разместиться на:

им же стоит избегать:

Выводы:

Рекомендация:

Презентация:

Презентация: https://disk.yandex.ru/i/saMgE7oGzAjGMw